// 导入express 模块 生成 express路由对象
const router = require("express").Router();

// ---------------------------------
// 导入验证数据的中间件
const expressJoi = require("@escook/express-joi");

// 导入文章分类的验证模块  id功能的验证规则  根据 Id 获取分类的规则
const {
  add_cate_schema,
  delete_cate_schema,
  get_cate_schema,
  update_cate_schema,
} = require("../schema/artcate");

// ----------------------------
//导入 所有文章处理相关的  的处理函数
const artcate_handler = require("../router_handler/artcate");

// --------------具体功能的路由模块------------------------------------
// 获取文章分类的列表数据
router.get("/cates", artcate_handler.getArticleCates);

// 新增文章分类的路由
router.post(
  "/addcates",
  expressJoi(add_cate_schema),
  artcate_handler.addArticleCates
);

// 删除文章分类的路由
router.get(
  "/deletecate/:id",
  expressJoi(delete_cate_schema),
  artcate_handler.deleteCateById
);

// 查询文章分类的路由
router.get(
  "/cates/:id",
  expressJoi(get_cate_schema),
  artcate_handler.getArticleById
);

// 根据 Id 更新文章分类数据
router.post(
  "/updatecate",
  expressJoi(update_cate_schema),
  artcate_handler.updateCateById
);

// 暴露出去  供app.js  调用
module.exports = router;
